1. Field
One or more embodiments relate to a walking robot that enables the control of stable walking based on a finite state machine (FSM), and a control method thereof.
2. Description of the Related Art
In recent years, numerous studies have been actively conducted on a walking robot which has a similar joint system to that of a human and is designed to coexist with humans in human working and living spaces. Such walking robots include multi-leg walking robots having a plurality of legs, such as bipedal or tripedal walking robots, and in order to achieve stable walking of the robots, actuators, such as electric motors and hydraulic motors, located at respective joints of the robot need to be driven. Driving of the actuators is generally divided into a position-based Zero Moment Point (ZMP) control method in which command angles, i.e., command positions, of respective joints are given and the joints are controlled so as to trace the command angle, and a torque-based Finite State Machine (FSM) control method in which command torques of respective joints are given and the joints are controlled so as to trace the command torques.
In the ZMP control method, a walking direction, a walking stride, and a walking velocity of a robot are set in advance so as to satisfy a ZMP constraint, i.e., a condition that a ZMP is present in a safety region within a support polygon formed by (a) supporting leg(s), the safety region, if the robot is supported by one leg, representing a region of the leg, and if the robot is supported by two legs, representing a region set to have a small area within a convex polygon including a region of the two legs. In consideration of safety, walking patterns of the respective legs corresponding to the set factors are created, and walking trajectories of the respective legs are calculated based on the walking patterns. Further, angles of joints of the respective legs are calculated through inverse kinematic calculation of the calculated walking trajectories, and target control values of the respective joints are calculated based on current angles and target angles of the respective joints.
The ZMP control method is a position-based control method and thus achieves a precise position control, but performs precise angle control of the respective joints in order to control the ZMP and thus requires a high servo gain. Thereby, the ZMP control method requires high current and thus has low energy efficiency and high stiffness of the joints. In addition, the ZMP control method, in order to calculate the angles of the respective joints through an inverse kinematic from the center of gravity (COG) and the walking pattern of foot, needs to avoid the kinematic singularities, thereby causing the robot to have unnatural gait with the knees bent different from that of a human.
A torque-based dynamic walking control method is achieved through a servo control such that the respective legs trace calculated walking trajectories at each control time. That is, during walking, whether or not positions of the respective legs precisely trace the walking trajectories according to the walking patterns is detected, and if one or more legs deviate from the walking trajectories, the torques of motors are adjusted so that the respective legs precisely trace the walking trajectories.
In order to achieve a stable walking according to the torque-based dynamic walking control method, dynamic equations need to be solved, but the dynamic equations of a robot provided with legs having six degrees of freedom capable of implementing in a random direction in a space are significantly complicated. Accordingly, the torque-based dynamic walking control method is applied only to a robot provided with legs having four degrees of freedom or below.
On the other hand, in a Finite State Machine (FSM) control method, instead of tracing the position at each control time, operating states of a robot is defined in advance, target torques of respective joints are calculated by referring to the respective operating states during walking, and the joints are controlled so as to trace the target torques. Such an FSM control method controls torques of the respective joints during walking and thus enables a low servo gain, so that the high energy efficiency and low stiffness are possible, thereby ensuring safety with respect to the surrounding environment. Further, the FSM control method does not need to avoid kinematic singularities, thereby allowing the robot to have a more natural gait with knees extended straight similar to that of a human.
However, the FSM control method, which controls the walking of the robot depending on the operating state that is defined in advance, is not proper to the control of walking and thus the robot may lose the balance. Accordingly, there is a need for a balancing action that may keep the balance of the robot regardless of the walking motion.